axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net';
//全局自定义头信息
//注册和登录也会发送，从需求角度出发，注册和登录并不需要头信息
// axios.defaults.headers.common['Authorization'] = localStorage.getItem('token');

//拦截所有ajax请求，在请求中添加判断条件，满足条件才设置头信息
axios.interceptors.request.use(function (config) {
    //拦截所有ajax请求，成功后交给这个函数处理，config代表所有请求参数
    //下面进行逻辑操作
    // console.log(config);
    if(config.url.indexOf('/my/') !== -1) {
        config.headers.Authorization = localStorage.getItem('token')
    }
    return config;
}, function(error){
    return Promise.reject(error);
})
//响应拦截器。拦截所有响应
axios.interceptors.response.use(function (response) {
    //逻辑处理响应信息
    if (response.data.message === '身份认证失败！') {
        //跳转到登录页，删除token
        location.href = '/login.html';
        localStorage.removeItem('token');
        return;
    }
    return response;
}, function (error) {
    return Promise.reject(error)
});

//格式化日期方法
function formatDate(time) {
    let dt = new Date(time);
    let y = dt.getFullYear();
    let m = padZero(dt.getMonth() + 1);
    let d = padZero(dt.getDate());
    let hh = padZero(dt.getHours());
    let mm = padZero(dt.getMinutes());
    let ss = padZero(dt.getSeconds());
    return `${y}-${m}-${d}-${hh}:${mm}:${ss}`
};
//不领函数
function padZero(n) {
    return n < 10 ? '0' + n : n;
}